package com.excesys.exsecs.energy.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.excesys.exsecs.energy.entity.DevKeqMap;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@Mapper
public interface DevKeqMapMapper extends BaseMapper<DevKeqMap> {

	//重点设备总用电量
	double getSumTotalPower(@Param("date") String date, @Param("subzone") String subzone,@Param("id") String id);

	//重点设备图表
	List<Map<String, Object>> chartPower(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("id") String id);

	//重点设备月图表
	List<Map<String, Object>> chartMonthPower(@Param("date") String date, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("id") String id);

	//重点设备年图表
	List<Map<String, Object>> chartYearPower(@Param("date") String date, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("id") String id);

	//重点设备 年区间 图表
	List<Map<String, Object>> chartMonthSection(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("id") String id);

	//重点设备总用电量
	List<Map<String, Object>> powerKeqLinks(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("idsList") List<String> idsList);

	//能耗报表 - 日
	List<Map<String, Object>> dayReport(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("idList") List<String> idList);
	//能耗报表 - 电 - 日区间
	List<Map<String, Object>> daySectionReport(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("idList") List<String> idList);
	//能耗报表 - 月
	List<Map<String, Object>> monthReport(@Param("date") String date, @Param("idList") List<String> idList);
	//能耗报表 - 电 - 月区间
	List<Map<String, Object>> monthSectionReport(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("idList") List<String> idList);
	//能耗报表 - 年
	List<Map<String, Object>> yearReport(@Param("date") String date, @Param("idList") List<String> idList);
	List<Map<String, Object>> yearSectionReport(@Param("startTime")String startTime, @Param("endTime")String endTime, @Param("idList")List<String> idList);
	//能耗排序
	List<Map<String, Object>>devSortRank(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("idList") List<String> idList);

}